The present invention is directed to image display and in particular to systems for refreshing a display device in accordance with a refresh memory.
Cathode-ray-tube (CRT), liquid-crystal-display (LCD), and some other types of display mechanisms employ periodic refreshing. In the case of a CRT display, for instance, an electron beam scans phosphors on the display screen at a rapid rate to keep the image visible. To this end, a refresh memory contains pixel data representing values of picture elements of which the image consist, and these data are fetched from memory in the order in which screen locations need to be "painted."
Particularly in the case of some small, hand-held displays, it is valuable to be able to vary the image display's orientation. An image whose longer dimension is vertical is referred to as having a "portrait" orientation, while an image whose horizontal dimension is longer is referred to as having a "landscape" orientation.
As a typical image to be displayed does, the typical display device has one dimension that is longer than the other, and in some smaller displays it is convenient to allow the user to orient the display in either the portrait or the landscape orientation, in accordance with the particular image for which the display device is being used. Now, it is impractical from a hardware standpoint for the display device to have its scanning changed in accordance with the particular orientation in which the display device is held or mounted. That is, the display device is typically so made as to scan successive display locations along a scan line that extends in the display's long-dimension direction, without regard to whether that direction is horizontal or vertical.
But, it is convenient from a programming standpoint to be able to refer to pixel locations in accordance with the intended image orientation: successive addresses should advance horizontally without regard to the display device's scan direction. That is, it is convenient to be able to refer to pixel locations sequentially along a portrait-oriented image's horizontal direction even though the display device will not retrieve image data from the memory in that sequence. This means that supporting hardware should compensate for display-device scan-direction changes so that they are transparent to that programmer.
One way of accomplishing this is to provide hardware that translates the programmer's software addresses into memory locations whose sequence matches the display-devices scanning sequence, and there are some applications in which this approach is desirable. But it is sometimes preferred, from a hardware-design standpoint, not to be required to make such translations in real time, since update addresses can occur in random order, complicating the translation process.